package day12;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

//测试单线程池
public
class TestSingle {
    static  int num=100;//票数
    public static
    void main(String[] args) {
        //1.创建线程池
        ExecutorService es= Executors.newSingleThreadExecutor();
        //2.执行线程池
        //es.execute(Runnable); 返回void
        //es.submit(Runnable或Callable); 返回Future<?>获取call()返回值
        for (int i=0;i<1000;i++){
            es.execute(()->{

                    num--;
                    System.out.println(Thread.currentThread().getName()+"售出第"+(100-num)+" 张，剩余票数："+num);
                if(num==0)  es.shutdownNow();
            });
        }
        //3.关闭线程池
        //es.shutdown();//等待所有任务执行完毕，关闭线程池
        //es.shutdownNow();//立即关闭线程池，不等待任务执行完毕

    }
}
